function fnGetQueryString(key) {
  //正则获取url后面的参数值，如?env=dev&exp=123
  var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)')
  var result = window.location.search.substr(1).match(reg)
  return result ? decodeURIComponent(result[2]) : false
}
function funcUrlDel(name) {
  //删除url指定参数名并返回新的url
  var loca = window.location
  var baseUrl = loca.origin + loca.pathname + '?'
  var query = loca.search.substr(1)
  if (query.indexOf(name) > -1) {
    var obj = {}
    var arr = query.split('&')
    for (var i = 0; i < arr.length; i++) {
      arr[i] = arr[i].split('=')
      obj[arr[i][0]] = arr[i][1]
    }
    delete obj[name]
    var url =
      baseUrl +
      JSON.stringify(obj)
        .replace(/[\"\{\}]/g, '')
        .replace(/\:/g, '=')
        .replace(/\,/g, '&')
    return url
  }
}

function getlinkSearch(key, reqStr) {
  var reg = new RegExp('(^|&)' + key + '=([^&]*)(&|$)')
  var result = reqStr.substr(1).match(reg)
  return result ? decodeURIComponent(result[2]) : false
}

function getFirstParameter() {
  var url = window.location.href.split('&')[0]
  var paramArray = url.split('?')
  if (paramArray.length == 1) {
    return ''
  } else {
    return paramArray[1]
  }
}

function refreshUrl() {
  //强制刷新到不带二次分享参数页面
  var url = '',
    reqStr = ''
  var firstParameter = getFirstParameter()
  if (fnGetQueryString('from')) {
    //from为微信二次分享自带参数
    url = funcUrlDel('from')
    var reqIndex = url.indexOf('?')
    reqStr = url.substr(reqIndex) //截取去除from参数后的地址
    if (getlinkSearch('isappinstalled', reqStr)) {
      //isappinstalled为微信二次分享自带参数
      url = url.substr(0, url.indexOf('?')) //截取去除isappinstalled参数后的地址
      if (url.indexOf('?') == -1) {
        window.location.href = url + '?' + firstParameter
      } else {
        window.location.href = url
      }
    } else {
      if (url.indexOf('?') == -1) {
        window.location.href = url + '?' + firstParameter
      } else {
        window.location.href = url
      }
    }
  }
}

$(function () {
  refreshUrl() //刷新页面去除一次分享带的参数
  var title = '龙图腾网-让成果转化容易，为企业创新助力'
  var news_abstract =
    '龙图腾网是以创新驱动的科技成果数字化服务平台，为企业、高校、服务机构提供科技成果托管、转化等平台服务，以“引领创新，向善而行”为使命，实现“让成果转化容易，为企业创新助力”的愿景。'
  $.ajax({
    type: 'GET',
    url: '/weChatShare/getConfig.html',
    data: 'url=' + encodeURIComponent(window.location.href.split('#')[0], 'UTF-8'),
    success: function (data) {
      var result = JSON.parse(data)
      if (result != null) {
        wx.config({
          debug: false,
          appId: 'wx0171fe30df64f653',
          timestamp: result.timestamp,
          nonceStr: result.nonceStr,
          signature: result.signature,
          jsApiList: [
            'onMenuShareTimeline',
            'onMenuShareAppMessage',
            'onMenuShareQQ',
            'updateAppMessageShareData',
          ],
        })
        wx.ready(function () {
          //需在用户可能点击分享按钮前就先调用
          wx.updateAppMessageShareData(
            {
              title: title, // 分享标题
              desc: news_abstract, // 分享描述
              link: location.href, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
              imgUrl: 'https://g.lotut.com/static/img/left-logo.png', // 分享图标
            },
            function (res) {
              //这里是回调函数
            }
          )
          // 2.1 监听“分享给朋友”，按钮点击、自定义分享内容及分享结果接口
          wx.onMenuShareAppMessage({
            title: title,
            desc: news_abstract,
            link: location.href,
            imgUrl: 'https://g.lotut.com/static/img/left-logo.png',
            trigger: function (res) {
              // 不要尝试在trigger中使用ajax异步请求修改本次分享的内容，因为客户端分享操作是一个同步操作，这时候使用ajax的回包会还没有返回
              //alert('用户点击发送给朋友');
            },
            success: function (res) {
              alert('已分享')
            },
            cancel: function (res) {
              alert('已取消')
            },
            fail: function (res) {
              alert(JSON.stringify(res))
            },
          })
          // 2.2 监听“分享到朋友圈”按钮点击、自定义分享内容及分享结果接口
          wx.onMenuShareTimeline({
            title: title,
            link: location.href,
            imgUrl: 'https://g.lotut.com/temp/images/logo_long.png',
            trigger: function (res) {
              // 不要尝试在trigger中使用ajax异步请求修改本次分享的内容，因为客户端分享操作是一个同步操作，这时候使用ajax的回包会还没有返回
              //alert('用户点击分享到朋友圈');
            },
            success: function (res) {
              alert('已分享')
            },
            cancel: function (res) {
              alert('已取消')
            },
            fail: function (res) {
              alert(JSON.stringify(res))
            },
          })
          // 分享给QQ
          wx.onMenuShareQQ({
            title: title,
            desc: news_abstract,
            link: location.href,
            imgUrl: 'https://g.lotut.com/static/img/left-logo.png',
            trigger: function (res) {
              //alert('用户点击发送给朋友');
            },
            success: function (res) {
              alert('已分享')
            },
            cancel: function (res) {
              alert('已取消')
            },
            fail: function (res) {
              alert(JSON.stringify(res))
            },
          })
        })

        /* wx.error(function (res) {
          alert(res.errMsg)
        }) */
      }
    },
    error: function () {},
  })
})
